Flash memory devices have developed into a popular source of non-volatile memory for a wide range of electronic applications. Flash memory devices typically use a one-transistor memory cell that allows for high memory densities, high reliability, and low power consumption. Common uses for flash memory include portable computers, personal digital assistants (PDAs), digital cameras, and cellular telephones. Program code, system data such as a basic input/output system (BIOS), and other firmware can typically be stored in flash memory devices. Most electronic devices are designed with a single flash memory device.
NAND flash memory devices are becoming popular due to the high memory densities possible at a relatively low cost. The NAND architecture connects 8, 16 or 32 memory cells in series on a single bit line. A simplified diagram of a typical prior art NAND architecture flash memory is illustrated in FIG. 1.
In FIG. 1, a NAND flash array is comprised of an array of floating gate cells 101 arranged in series strings 104, 105. Each of the floating gate cells are coupled drain to source in the series chain 104, 105. Word lines (WL0-WL31) that span across multiple series strings 104, 105 are coupled to the control gates of every floating gate cell in order to control their operation.
In operation, the word lines (WL0-WL31) select the individual floating gate memory cells in the series chain 104, 105 to be written to or read from and operate the remaining floating gate memory cells in each series string 104, 105 in a pass through mode. Each series string 104, 105 of floating gate memory cells is coupled to a source line 106 by a source select gate 116, 117 and to an individual bit line (BL1-BLN) by a drain select gate 112, 113. The source select gates 116, 117 are controlled by a source select gate control line SG(S) 118 coupled to their control gates. The drain select gates 112, 113 are controlled by a drain select gate control line SG(D) 114.
It can be seen from FIG. 1 that in order to read one memory cell, current must flow through the other memory cells in the series 104, 105. Therefore, the remaining cells become parasitic resistances in series with either the drain or source connections. Since the cell 123 at the bottom of the series 104 is closest to the array ground, it sees 31 voltage drops in the drain line and one in the source line. The cell 120 at the top of the series 104 sees 31 voltage drops in the source line and one in the drain line.
It is well known in the art that the current of any transistor (i.e., memory cell) is determined by the transistor's Vgs and Vds, depending on the mode of operation. In saturation mode, the current of the cell varies mostly with Vgs and is not a function of Vds. The transistor current varies with the square of Vgs. In linear mode, the current through the cell varies with Vds.
Assuming a particular cell is operating in saturation mode in order to get the highest gain, it can be seen that the cell 123 at the bottom of the series of cells 104 does not experience a voltage drop on its Vgs. The cell 120 at the top of the series of cells 104 sees 31 times the voltage drop in the source voltage. Since the cell current is a function of (Vgs −Vt)2, the difference in the source voltages is going to be squared in reflection of the cell current change, Vt (i.e., the threshold voltage) being the same. This eventually may result in the bottom cell 123 being over-erased due to the top cell 120 dictating the number of erase pulses.
Typical flash memory uses a single bit-per-cell. Each cell is characterized by a specific threshold voltage or Vt level. Within each cell, two possible voltage levels exist. These two levels are controlled by the amount of charge that is programmed or stored on the floating gate; if the amount of charge on the floating gate is above a certain reference level, the cell is considered to be in a different state (e.g., programmed or erased).
Multilevel cells have recently been introduced to greatly increase the density of a flash memory device. This technology enables storage of multiple bits per memory cell by charging the floating gate of the transistor to different levels. This technology takes advantage of the analog nature of a traditional flash cell by assigning a bit pattern to a specific voltage range stored on the cell. This technology permits the storage of two or more bits per cell, depending on the quantity of voltage ranges assigned to the cell.
For example, a cell may be assigned four different voltage ranges of 200 mV for each range. Typically, a dead space or guard band of 0.2V to 0.4V is between each range. If the voltage stored on the cell is within the first range, the cell is storing a 00. If the voltage is within the second range, the cell is storing a 01. This continues for as many ranges are used for the cell.
The precision at which the voltages in multilevel cells on the device are sensed must greatly increase from a normal two state cell. The multiple thresholds assigned to a cell require the cells to be more uniform in their threshold and Vt distribution as well as the uniformity in the cell currents.
For the reasons stated above, and for other reasons stated below which will become apparent to those skilled in the art upon reading and understanding the present specification, there is a need in the art for a flash memory having uniform threshold voltage and Vt distribution.